/**
 * DownloadProduct 业务逻辑
 * @author yanwl
 * @date 2014-08-25
 */
package com.chnbst.bstyun.service;

import java.util.List;
import java.util.Map;

import com.chnbst.bstyun.model.pojo.DownloadProduct;
import com.chnbst.bstyun.model.pojo.Product;

public interface DownloadProductService {
	/**
	 * 删除下载产品
	 * @param downloadProductId 下载产品编号
	 * @return 删除成功返回true，否则返回false
	 */
	boolean deleteDownloadProduct(Integer downloadProductId);

	/**
	 * 添加下载产品
	 * @param downloadProduct 下载产品对象
	 * @return 返回自动增量id对象
	 */
	boolean insertDownloadProduct(DownloadProduct downloadProduct);
	
	/**
	 * 更新下载产品
	 * @param downloadProduct 下载产品对象
	 * @return 布尔值 成功为true，失败为false
	 */
	boolean updateDownloadProduct(DownloadProduct downloadProduct);

	/**
	 * 根据下载产品编号查找下载产品
	 * @param downloadProductId 下载产品编号
	 * @return 如果找到返回该下载产品，否则返回空 null
	 */
    DownloadProduct selectDownloadProductByDownloadProductId(Integer downloadProductId);

    /**
     * 查询所有下载产品Vo信息
     * @return 返回所有下载产品Vo信息
     */
    List<Product> selectDownloadProducts(Map<String, Object> map);
    
    /**
     * 查询下载中的产品总数
     * @return 返回下载中的产品总数
     */
    int selectDownloadProductCount(Map<String, Object> map);
}
